package com.ruoyi.RDTeam.domain;

import com.ruoyi.RDTeam.domain.relationship.MGameRecordList;
import com.ruoyi.RDTeam.domain.relationship.MProductCenterList;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * 研发团队成员展示对象 member_info
 *
 * @author ruoyi
 * @date 2024-12-03
 */
public class MemberInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** Uuid */
    private String memberId;

    /** 姓名 */
    @Excel(name = "姓名")
    private String name;

    /** 头像的url */
    @Excel(name = "头像的url")
    private String pictureUrl;

    /** 年级+专业，要求例如“22级计算机” */
    @Excel(name = "年级+专业，要求例如“22级计算机”")
    private String major;

    /** 加入时间，格式要求“年+月”，如2023.10 */
    @Excel(name = "加入时间，格式要求“年+月”，如2023.10")
    private String joinTime;

    /** 擅长专长 */
    @Excel(name = "擅长专长")
    private String expertise;

    /** 就职单位 */
    @Excel(name = "就职单位")
    private String employmentCompany;

    /** 联系电话 */
    @Excel(name = "联系电话")
    private String phone;

    /** 是否在站，1：在站成员；0：出站成员 */
    @Excel(name = "是否在站，1：在站成员；0：出站成员")
    private Long isOnDuty;

   //成绩
    private Integer totalScore;

    // 用于接收上传的文件，但不映射到数据库
    private MultipartFile avatarFile;



    public MultipartFile getAvatarFile() {
        return avatarFile;
    }

    public void setAvatarFile(MultipartFile avatarFile) {
        this.avatarFile = avatarFile;
    }

    public Integer getTotalScore() {
        return totalScore;
    }

    public void setTotalScore(Integer totalScore) {
        this.totalScore = totalScore;
    }
    //    添加产品列表
    private List<MProductCenterList> mProductCenterList;

    //添加战队
    private List<MGameRecordList> mGameRecordList;

    public List<MProductCenterList> getmProductCenterList() {
        return mProductCenterList;
    }

    public void setmProductCenterList(List<MProductCenterList> mProductCenterList) {
        this.mProductCenterList = mProductCenterList;
    }

    public List<MGameRecordList> getmGameRecordList() {
        return mGameRecordList;
    }

    public void setmGameRecordList(List<MGameRecordList> mGameRecordList) {
        this.mGameRecordList = mGameRecordList;
    }

    public void setMemberId(String memberId)
    {
        this.memberId = memberId;
    }

    public String getMemberId()
    {
        return memberId;
    }
    public void setName(String name)
    {
        this.name = name;
    }

    public String getName()
    {
        return name;
    }
    public void setPictureUrl(String pictureUrl)
    {
        this.pictureUrl = pictureUrl;
    }

    public String getPictureUrl()
    {
        return pictureUrl;
    }
    public void setMajor(String major)
    {
        this.major = major;
    }

    public String getMajor()
    {
        return major;
    }
    public void setJoinTime(String joinTime)
    {
        this.joinTime = joinTime;
    }

    public String getJoinTime()
    {
        return joinTime;
    }
    public void setExpertise(String expertise)
    {
        this.expertise = expertise;
    }

    public String getExpertise()
    {
        return expertise;
    }
    public void setEmploymentCompany(String employmentCompany)
    {
        this.employmentCompany = employmentCompany;
    }

    public String getEmploymentCompany()
    {
        return employmentCompany;
    }
    public void setPhone(String phone)
    {
        this.phone = phone;
    }

    public String getPhone()
    {
        return phone;
    }
    public void setIsOnDuty(Long isOnDuty)
    {
        this.isOnDuty = isOnDuty;
    }

    public Long getIsOnDuty()
    {
        return isOnDuty;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("memberId", getMemberId())
                .append("name", getName())
                .append("pictureUrl", getPictureUrl())
                .append("major", getMajor())
                .append("joinTime", getJoinTime())
                .append("expertise", getExpertise())
                .append("employmentCompany", getEmploymentCompany())
                .append("phone", getPhone())
                .append("isOnDuty", getIsOnDuty())
                .append("totalScore", getTotalScore())
                .append("mProductCenterList",getmProductCenterList())
                .append("mGameRecordList",getmGameRecordList())
                .toString();
    }
}
